flask: create unified "flask=" boot parameter
authorDaniel De Graaf <dgdegra@tycho.nsa.gov>
Tue, 10 Mar 2015 12:50:24 +0000 (13:50 +0100)
committerJan Beulich <jbeulich@suse.com>
Tue, 10 Mar 2015 12:50:24 +0000 (13:50 +0100)
commitb5f90278f5a5c9658a481a99f6a18bf4badba616
tree91e0bf29d40e639539b48c354a02e55a5c968e14
parentbcf92a5382b75fd964c1f8678b2d9a3abe6dec39
flask: create unified "flask=" boot parameter

This unifies the flask_enforcing and flask_enabled boot parameters into
a single parameter with additional states.  Defined options are:

 enforcing - require policy to be loaded at boot time and enforce it
 permissive - a missing or broken policy does not panic
 disabled - revert to dummy (no XSM) policy.  Was flask_enabled=0
 late - bootloader policy is not used; later loadpolicy is enforcing

The default mode remains "permissive" and the flask_enforcing boot
parameter is retained for compatibility.  If flask_enforcing=1 is
specified and flask= is not, the bootloader policy will be loaded in
enforcing mode if present, but errors will disable access controls until
a successful loadpolicy instead of causing a panic at boot.

Suggested-by: Julien Grall <julien.grall@linaro.org>
Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
docs/man/xl.pod.1
docs/misc/xen-command-line.markdown
docs/misc/xsm-flask.txt
xen/xsm/flask/flask_op.c
xen/xsm/flask/hooks.c
xen/xsm/flask/include/avc.h
xen/xsm/flask/include/security.h